import { typeStatus } from "@/interface/public";

/* AuthState */
export interface AuthState {
  authButtonList: string[];
  authMenuList: string[];
  roles: string[];
  getAuth: 0 | 1;
}

/* UserState */
export interface UserState {
  token: string;
  userInfo: {
    id: number;
    mobile: number;
    status: number;
    username: string;
    douser: string;
    remark: string;
    name: string;
  };
  IDENTITY_ADMIN: string;
  IDENTITY_SENSITIVE_INFO: string;
}

// 主题
export interface Theme {
  theme: "blue-theme" | "jade-theme" | "orange-theme";
  basicColor: BasicColorProp;
}

export interface GlobalState {
  messageStatus: typeStatus["message"];
  message: string;
  loadingMessage: string;
  tabbarValue: string;
  getVersion: boolean;
  loading: boolean;
  modalLoading: boolean;
}

export interface BasicColorProp {
  primary: "#3A75C5" | "#303133";
  primary_plain: "#ECF5FF" | "#f1f1f1";
}
